From: Ian Campbell Date: Wed, 4 Apr 2012 15:10:18 +0000 (+0100) Subject: libxl: fixup error handling in libxl_send_trigger X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/success//%22http:/www.example.com/cgi/success/?a=commitdiff_plain;h=023c5c2aaa17341e610624c48255bde538cb8c4a;p=xen.git libxl: fixup error handling in libxl_send_trigger xc_domain_send_trigger returns -1 and sets errno on failure so use LIBXL__LOG_ERRNO not LIBXL__LOG_ERRNOVAL(rc). Change the default case of the switch to set rc=-1,errno=EINVAL too. Also we weren't actually returning the error code we'd decided on. Signed-off-by: Ian Campbell Acked-by: Ian Jackson Committed-by: Ian Jackson --- diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c index 53443665d4..7a54524237 100644 --- a/tools/libxl/libxl.c +++ b/tools/libxl/libxl.c @@ -3309,18 +3309,19 @@ int libxl_send_trigger(libxl_ctx *ctx, uint32_t domid, rc = 0; break; default: - rc = EINVAL; + rc = -1; + errno = EINVAL; break; } if (rc != 0) { - LIBXL__LOG_ERRNOVAL(ctx, LIBXL__LOG_ERROR, rc, - "Send trigger '%s' failed", - libxl_trigger_to_string(trigger)); + LIBXL__LOG_ERRNO(ctx, LIBXL__LOG_ERROR, + "Send trigger '%s' failed", + libxl_trigger_to_string(trigger)); rc = ERROR_FAIL; } - return 0; + return rc; } int libxl_send_sysrq(libxl_ctx *ctx, uint32_t domid, char sysrq)